The present invention discloses an Analog to Digital Converter (ADC) unit that is incorporated into a microcontroller or some other type of processing unit and that provides the programming user of the device the ability to program a sequence to the Analog to Digital (A to D) conversion process. The present invention is an implementation that has up to four programmable sequences, where the maximal lengths of each sequence programmable sequence is {8, 4, 4, 1}. The present invention also provides that the programmable sequences are prioritized with respect to each other.
In addition, the present invention provides the ADC unit with a user defined event-initiated sampling in addition to interrupt driven events as is typical in other microcontrollers. In a manner similar to interrupt driven events, the present invention provides that system events may initiate or activate one of the programmable sequences for an A to D conversion.